//
//  FactoryProtocol.h
//  CocoaSynth
//
//  Created by Simon André on 17/02/10.
//  Copyright 2010 __MyCompanyName__. All rights reserved.
//

#import <Cocoa/Cocoa.h>

@class Module;

@protocol ConnectorProtocol;
@class ModuleViewController;


@protocol FactoryProtocol <NSObject>

#pragma mark -
#pragma mark Modules

+ (ModuleViewController*)createVCO;
+ (ModuleViewController*)createVCF;
+ (ModuleViewController*)createVCA;
+ (ModuleViewController*)createADSR;
+ (ModuleViewController*)createSpeaker;
+ (ModuleViewController*)createWriter;
+ (ModuleViewController*)createKeyboard;
+ (ModuleViewController*)createDispatcher;

#pragma mark -
#pragma mark Connector

+ (id<ConnectorProtocol>)createConnector;

@end